1. Field of the Invention
Embodiments of the present invention generally relate to a method and apparatus for utilizing data within storage volumes and, more particularly, the invention relates to a method and apparatus for creating a storage volume snapshot in a process for backing up or otherwise utilizing data within the storage volume.
2. Description of the Related Art
In a common networked computing environment, at least one application server is coupled to user computers (clients) through a communications network. The clients execute and utilize various applications available on the application server. The application server contains or has access to data for the applications it supports. The data is generally stored in a multitude of volumes of a storage system that is coupled to the application server.
The manufacturers of the various application software packages provide supplemental software that can be executed for making copies of the data that is stored in each volume that is used by a particular application. The supplemental software (referred to herein as a Snapshot Provider) creates a “snapshot” of the data volume used by the related application. A snapshot is generally defined as a metadata mapping to volume blocks that represent the “picture” of the data at the time the snapshot is created. For example, Microsoft Corporation distributes a software package entitled “Volume Shadow Copy Services” (VSS) that provides a process for creating a snapshot (or shadow copy) of a volume that is used by a Microsoft application (e.g., EXCHANGE). VSS exposes APIs in a VSS framework that enable vendors to VSS-enable their solutions. Typically, a provider is a process (i.e., Kernel-mode or user-mode code) that “persists” data about a physical snapshot in order for that snapshot to be exposed to the operating system and/or applications. Providers can be implemented in either hardware or software. Once created, the snapshot is processed within the application server to provide a data stream to a backup system such that the data files within the volume are backed up on a remotely located backup system.
A Snapshot Provider is used for creating each of the snapshots. These providers are generally individually associated with one or more volumes and, there may be many Snapshot Providers located in one application server. It is also possible that a volume can associated with one or more different providers. The proliferation of Snapshot Providers can become detrimental to the function of the application server. The processing of the snapshots on the application server by different providers places a severe burden on the application server.
Therefore, there is a need in the art for a method and apparatus of improving the use of snapshots in data backup as well as other data services.